<ComboBox x:Class="WozLib.UI.Controls.ToolSelectComboBox"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    MinWidth="80"
          >
  <ComboBox.Resources>
    <Style TargetType="ComboBoxItem" x:Key="ComboBoxItemStyle">
      <Setter Property="HorizontalAlignment" Value="Left"/>
      <Setter Property="Margin" Value="0 1 5 1"/>
    </Style>
    <Style TargetType="{x:Type Canvas}">
      <Setter Property="Width" Value="12"/>
      <Setter Property="Height" Value="12"/>
      <Setter Property="Margin" Value="0 0 3 0"/>
    </Style>
  </ComboBox.Resources>

  <ComboBoxItem x:Name="_Selector_Selected" Selected="Selector_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid><Grid.ColumnDefinitions><ColumnDefinition Width="Auto"/><ColumnDefinition Width="*"/><ColumnDefinition Width="Auto"/></Grid.ColumnDefinitions>
        <Canvas Grid.Column="0">
          <Rectangle StrokeDashArray="2" Canvas.Top="2" Stroke="Black" Fill="Transparent" Width="12" Height="10"/>
        </Canvas>
        <TextBlock Grid.Column="1" Text="selector"/>
        <CheckBox x:Name="_Selector_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem x:Name="_Pencil_Selected" HorizontalAlignment="Stretch" IsSelected="True" Selected="Pencil_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid HorizontalAlignment="Stretch">
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Polygon Points="2,4 4,2 10,8 8,10" Stroke="Gray" Fill="Yellow" StrokeThickness="0.5">
          <!--<Polygon.Fill>
                  <RadialGradientBrush GradientOrigin="0,0" Center="0,0" RadiusX="1" RadiusY="1">
                    <RadialGradientBrush.GradientStops>
                      <GradientStop Color="AliceBlue" Offset="0" />
                      <GradientStop Color="Yellow" Offset="1" />
                    </RadialGradientBrush.GradientStops>
                  </RadialGradientBrush>
                </Polygon.Fill>-->
        </Polygon>
        <Polygon Points="8,10 10,8 12,12" Stroke="Black" Fill="Black" StrokeThickness="0.5"/>
        <Polygon Points="0,2 2,0 4,2 2,4" Stroke="Pink" Fill="Pink" StrokeThickness="0.5"/>
      </Canvas>
      <TextBlock Grid.Column="1" Text="pencil"/>
      <CheckBox x:Name="_Pencil_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="True" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem x:Name="_Eraser_Selected" HorizontalAlignment="Stretch"  Selected="Eraser_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Polygon Points="0,0 6,0 12,8 6,8" Stroke="Gray" StrokeThickness="0.5">
          <Polygon.Fill>
            <RadialGradientBrush GradientOrigin="0,0" Center="0,0" RadiusX="1" RadiusY="1">
              <RadialGradientBrush.GradientStops>
                <GradientStop Color="AliceBlue" Offset="0" />
                <GradientStop Color="sc#1, 0.2725, 0.3353, 0.7882" Offset="1" />
              </RadialGradientBrush.GradientStops>
            </RadialGradientBrush>
          </Polygon.Fill>
        </Polygon>
        <Polygon Points="12,8 6,8 6,12 12,12" Stroke="Gray" Fill="sc#1, 0.2725, 0.3353, 0.7882" StrokeThickness="0.5"/>
        <Polygon Points="0,0 6,8 6,12 0,4" Stroke="Gray" StrokeThickness="0.5">
          <Polygon.Fill>
            <RadialGradientBrush GradientOrigin="0,0" Center="0,0" RadiusX="1" RadiusY="1">
              <RadialGradientBrush.GradientStops>
                <GradientStop Color="AliceBlue" Offset="0" />
                <GradientStop Color="sc#1, 0.2725, 0.3353, 0.7882" Offset="1" />
              </RadialGradientBrush.GradientStops>
            </RadialGradientBrush>
          </Polygon.Fill>
        </Polygon>
      </Canvas>
      <TextBlock Grid.Column="1" Text="eraser"/>
      <CheckBox x:Name="_Eraser_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked" IsChecked="True" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>

  <ComboBoxItem x:Name="_Gesture_Selected" HorizontalAlignment="Stretch" Selected="Gesture_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Path Data="M 1,11 C 15,4 8,0 2,4 C 3,11 11,11 11,11" Stroke="sc#1, 0.1725, 0.2353, 0.6882" StrokeThickness="1" StrokeDashArray="2 1"/>
      </Canvas>
      <TextBlock Grid.Column="1" Text="gesture"/>
      <CheckBox x:Name="_Gesture_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>

  <ComboBoxItem x:Name="_None_Selected" HorizontalAlignment="Stretch" Selected="None_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
      </Canvas>
      <TextBlock Grid.Column="1" Text="none"/>
      <CheckBox x:Name="_None_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked" IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  
  <ComboBoxItem Visibility="Collapsed" x:Name="_Line_Selected"  HorizontalAlignment="Stretch" Selected="Line_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Line Stroke="Black" StrokeThickness="1.5" X1="2" X2="10" Y1="2" Y2="10"/>
      </Canvas>
      <TextBlock Grid.Column="1" Text="line"/>
      <CheckBox x:Name="_Line_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem Visibility="Collapsed" x:Name="_Rectangle_Selected" HorizontalAlignment="Stretch" Selected="Rectangle_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Rectangle Canvas.Top="2" Stroke="Black" Fill="sc#1, 0.2725, 0.3353, 0.7882" Width="12" Height="10"/>
      </Canvas>
      <TextBlock Grid.Column="1" Text="rectangle"/>
      <CheckBox x:Name="_Rectangle_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem Visibility="Collapsed" x:Name="_Ellipse_Selected"  HorizontalAlignment="Stretch" Selected="Ellipse_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Ellipse Canvas.Top="2" Stroke="Black" Fill="sc#1, 0.2725, 0.3353, 0.7882" Width="12" Height="10"/>
      </Canvas>
      <TextBlock Grid.Column="1" Text="ellipse"/>
      <CheckBox x:Name="_Ellipse_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem Visibility="Collapsed" x:Name="_Image_Selected"  HorizontalAlignment="Stretch" Selected="Image_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas ClipToBounds="True">
        <Rectangle Fill="SkyBlue" Height="8" Width="12"/>
        <Rectangle Fill="Green" Height="4" Width="12" Canvas.Top="8"/>
        <Ellipse Fill="Yellow" Height="8" Width="8" Canvas.Left="7" Canvas.Top="-3"/>
        <Polygon Fill="SlateGray" Points="0,8 3,2 5,7, 7,5 9,8"/>
        <Rectangle Fill="Transparent" Height="12" Width="12" Stroke="Gray" StrokeThickness="0.5"/>
      </Canvas>
      <TextBlock Grid.Column="1" Text="image"/>
      <CheckBox x:Name="_Image_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem Visibility="Collapsed" x:Name="_Gradient_Selected"  HorizontalAlignment="Stretch" Selected="Gradient_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Rectangle Canvas.Top="2" Stroke="Black" Width="12" Height="10">
          <Rectangle.Fill>
            <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
              <GradientStop Color="AliceBlue" Offset="0"/>
              <GradientStop Color="sc#1, 0.2725, 0.3353, 0.7882" Offset="1"/>
            </LinearGradientBrush>
          </Rectangle.Fill>
        </Rectangle>
      </Canvas>
      <TextBlock Grid.Column="1" Text="gradient"/>
      <CheckBox x:Name="_Gradient_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem Visibility="Collapsed" x:Name="_Text_Selected"  HorizontalAlignment="Stretch" Selected="Text_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Rectangle Canvas.Top="2" StrokeThickness="0" Width="12" Height="10">
          <Rectangle.Fill>
            <VisualBrush Stretch="None" AlignmentX="Left" AlignmentY="Top">
              <VisualBrush.Visual>
                <TextBox Text="Aaaa" FontSize="8" Padding="0"/>
              </VisualBrush.Visual>
            </VisualBrush>
          </Rectangle.Fill>
        </Rectangle>
      </Canvas>
      <TextBlock Grid.Column="1" Text="textbox"/>
      <CheckBox x:Name="_Text_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem Visibility="Collapsed" x:Name="_Button_Selected"  HorizontalAlignment="Stretch" Selected="Button_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
        <Rectangle Canvas.Top="2" StrokeThickness="0" Width="12" Height="10">
          <Rectangle.Fill>
            <VisualBrush>
              <VisualBrush.Visual>
                <Button Width="20" Height="12"/>
              </VisualBrush.Visual>
            </VisualBrush>
          </Rectangle.Fill>
        </Rectangle>
      </Canvas>
      <TextBlock Grid.Column="1" Text="button"/>
      <CheckBox x:Name="_Button_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
  <ComboBoxItem Visibility="Collapsed" x:Name="_Arrow_Selected"  HorizontalAlignment="Stretch" Selected="Arrow_Selected" Style="{StaticResource ComboBoxItemStyle}">
    <Grid>
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
      </Grid.ColumnDefinitions>
      <Canvas Grid.Column="0">
      </Canvas>
      <TextBlock Grid.Column="1" Text="arrow"/>
      <CheckBox x:Name="_Arrow_Checked" Checked="UserToolsEnabledCollection_Checked" Unchecked="UserToolsEnabledCollection_Checked"  IsChecked="False" Grid.Column="2" HorizontalAlignment="Right" Margin="4 1 3 1"/>
    </Grid>
  </ComboBoxItem>
</ComboBox>
